import 'package:logger/logger.dart';

///封装日志工具。
class LogUtils {
  /// 全局单例。
  static final Logger _logger = Logger(
    // printer: PrefixPrinter(PrettyPrinter()),
    filter: null, // 使用默认的日志过滤器（-> 只在 Debug 模式记录日志）
    output: null, // 使用默认的日志输出（-> 发送所有内容到控制台）

    // 使用 PrettyPrinter（美化打印机） 来格式化和打印日志
    printer: PrettyPrinter(
        methodCount: 2,// 要显示的方法调用次数
        // errorMethodCount: 8,// 如果提供了堆栈跟踪，则方法调用的数量
        // lineLength: 120,// 输出宽度
        colors: true, // 彩色日志消息
        printEmojis: true,// 为每条日志消息打印一个表情符号
        printTime: true// 每个日志打印是否应该包含时间戳。
    ),
  );

  // Private constructor to prevent instantiation
  LogUtils._();

  static void v(dynamic message) {
    _logger.v(message);
  }
  static void d(dynamic message) {
    _logger.d(message);
  }

  static void i(dynamic message) {
    _logger.i(message);
  }

  static void w(dynamic message) {
    _logger.w(message);
  }

  static void e(dynamic message) {
    _logger.e(message);
  }

  static void wtf(dynamic message) {
    _logger.wtf(message);
  }

// You can add more custom log methods or configure the logger as needed.
}
